package strategy

import (
	"time"
)

// 信号类型
type SignalType int

const (
	NoSignal SignalType = iota
	BuySignal
	SellSignal
)

// 交易信号
type Signal struct {
	Type      SignalType
	Price     float64
	Timestamp time.Time
	Reason    string
}

// 策略接口
type Strategy interface {
	Update(price float64, timestamp time.Time) (*Signal, error)
	GetSymbol() string
	Reset()
}
